package com.yonyou.pmclouds.projectpart.service;

import com.yonyou.pmclouds.basecom.entity.SuperVO;
import com.yonyou.pmclouds.basecom.exception.BusinessException;
import com.yonyou.pmclouds.projectpart.entity.ProjectPartRefVO;
import com.yonyou.pmclouds.projectpart.entity.ProjectPartVO;

import java.util.List;

public interface IProjectpartQryService {
    /**
     * 根据传参查询符合条件的数据
     * @param para
     * @return
     */
    ProjectPartVO queryVOsByCondition(ProjectPartVO para);

    /**
     * 根据PK查询工程部位数据
     * @param pk_projectparts
     * @return
     */
    List<ProjectPartVO> queryVOByPKs(List<String> pk_projectparts);

    /**
     * 查询项目下可以被参照的工程部位
     *
     * @param pkProject
     * @return
     */
    List<ProjectPartRefVO> queryRefVOs(String pkProject) throws BusinessException;

    /**
     * 根据#{vos[i].pkProjectpart}的值，填充对象集合#{vos}中的属性#{vos[i].projectpartName}值
     * @param vos
     * @throws BusinessException
     */
    void fillProjectpartName (SuperVO[] vos)throws BusinessException;

    /**
     * 根据#{vo.pkProjectpart}的值，填充对象集合#{vo.projectpartName}值
     * @param vo
     * @throws BusinessException
     */
    void fillProjectpartName (SuperVO vo)throws BusinessException;
}
